package dao;

import bean.doctor;
import bean.ficha;
import bean.ficha_medicam;
import bean.historial;
import bean.medicamento;
import bean.signo;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

/**
 *
 * @author May
 */
public class d_ficha {
   public ArrayList listadoFichas() throws SQLException {
        conexion db=new conexion();
        String query="select * from ficha";
        ResultSet resultado = db.seleccion(query);
        ficha mifichaM=null;
        signo misigno;
        doctor midoctor;
        historial mihistorial;
                
        ArrayList todos=new ArrayList();
        while (resultado.next()) {
            mifichaM = new ficha();
            midoctor=new doctor();
            misigno=new signo();
            mihistorial=new historial();
            
            mifichaM.setId(resultado.getInt(1));
            mifichaM.setFecha(resultado.getString(2) );
            mifichaM.setImagen(resultado.getBlob(3));
            misigno.setId(resultado.getInt(4));
            midoctor.setCedula(resultado.getString(5));
            mihistorial.setId(resultado.getInt(6));
            //aqui retomo y seteo los 3 obejtos
           // midoctor.BuscaXid_SeteaObjetoDoctor();
            
            //
            mifichaM.setMidoctor(midoctor);
            mifichaM.setMihistorial(mihistorial);
            mifichaM.setMissignosV(misigno);
            todos.add(mifichaM);
        }
        return todos;
    } 
          
    public ficha buscarFicha(int ide) throws SQLException {
        conexion db=new conexion();
        String query="select * from ficha where id='" + ide + "'";   
        ResultSet resultado = db.seleccion(query);
       
        ficha mificha=null;
        signo misigno;
        doctor midoctor;
        historial mihistorial;
        
        if (resultado!=null && resultado.next()!=false) {
            mificha = new ficha();
            misigno=new signo();
            midoctor=new doctor();
            mihistorial=new historial();
            
            mificha.setId(resultado.getInt(1));
            mificha.setFecha(resultado.getString(2));
            mificha.setImagen(resultado.getBlob(3));
            //tomo solo codigos
            misigno.setId(resultado.getInt(4));
            midoctor.setCedula(resultado.getString(5));
            mihistorial.setId(resultado.getInt(6));
            
            //seteo objetos
            midoctor.BuscaXid_SeteaObjetoDoctor();
            misigno.BuscaXId_SignoVital();
            mihistorial.BuscaXId_Historial();
            //aqui guardo todo en la ficha, con los objetos ya llenos
            mificha.setMidoctor(midoctor);
            mificha.setMihistorial(mihistorial);
            mificha.setMissignosV(misigno);     
        }
        return mificha;
    }
    
     public ArrayList buscarFichas(int historialid) throws SQLException {
        conexion db=new conexion();
        String query="select * from ficha where historialid = '" +historialid+ "'";
        ResultSet resultado = db.seleccion(query);
        ficha mifichaM=null;
        signo misigno;
        doctor midoctor;
        historial mihistorial;
                
        ArrayList todos=new ArrayList();
        while (resultado.next()) {
            mifichaM = new ficha();
            midoctor=new doctor();
            misigno=new signo();
            mihistorial=new historial();
            
            mifichaM.setId(resultado.getInt(1));
            mifichaM.setFecha(resultado.getString(2) );
            mifichaM.setImagen(resultado.getBlob(3));
            misigno.setId(resultado.getInt(4));
            midoctor.setCedula(resultado.getString(5));
            mihistorial.setId(resultado.getInt(6));
            //aqui retomo y seteo los 3 obejtos
           // midoctor.BuscaXid_SeteaObjetoDoctor();
            
            //
            mifichaM.setMidoctor(midoctor);
            mifichaM.setMihistorial(mihistorial);
            mifichaM.setMissignosV(misigno);
            todos.add(mifichaM);
        }
        return todos;
    } 
    
}
